EL JTAG, TEORIA Y PRACTICA, PRIMERA PARTE (Continuara)

Como no es posible rectificar el titulo, del anterior hilo, "El Jtag (Teoria), Primera parte", recojo en este nuevo, todo lo recopilado hasta el momento, anterior y lo nuevo, a fin de reoger todo el estudio, en uno solo y no tener dispersado el tema.

 
TEORIA DEL JTAG


Como ya anuncie en un post anterior, vamos a tratar de comentar aquí, que es un JTAG (Joint Test Action Group), y para que sirve –ya de forma definitiva- en los decos STR8000 equipados con el chip L64108 decoder MPEG. Esta es la teoría y la practica de lo que puede ser un gran paso y el final a los decos “muertos”, por errores en las cargas del firmware. A falta de un deco Strong 8000 por parte de este autor, ya conseguido en el momento de esta modificacion gracias a CARCA90, ha sido posible la investigacion y desarrollo de lo aqui expuesto, por las personas que añado en el capitulo de agradecimientos. Lo aqui expuesto, ha sido verificado, y se encuentra en la chincheta correspondiente, aunque algun "temerario colaborador", probo y sufrio en propias carnes, lo primero que se expuso aqui, a pesar de las advertencias .

 

AGRADECIMIENTOS
(por orden alfabético)

ABAZAGAP
BIOS
BROTHER
FER-HA
MAKININ
PILTRI
http://xsat.rtfm.be/


a todos ellos, mi agradecimiento por su valiosa información, datasheets, fotografías, deco, pruebas...., e incluso noches sin dormir, etc. Y a todos vosotros, por aguantar este soporífero rollo, que no es nada de ello, pero que abrirá las puertas a muchas cosas, hasta ahora aun no suficientemente experimentadas.
A través de un JTAG, podremos tener comunicación directa, no solo con el corazon del STR8000, el chip L64108 accediendo a todas sus funciones, sino con dos de los elementos más importantes que tenemos en el deco, la memoria flash y la E2PROM (eeprom). Quiere esto decir que, en aquellos casos, en los que un boot no sea posible grabarlo en la E2PROM, o que este haya sido cargado de forma fallida o errónea, por el método tradicional que empleamos actualmente, o a través del programa ED-Strong 6’1 de Fer-Ha (algo poco probable), podremos recurrir al JTAG como medio de borrar la memoria Flash y E2PROM y a continuación grabar en ella, nuevamente y a través del JTAG, el nuevo boot. Esto nos permitiría recuperar el deco, cuando otros métodos de sobra conocidos por todos, han fallado, ya que se trabaja a nivel de mismo chip, y sin intermediarios.

Para situarnos en ambiente, en primer lugar debemos conocer el esquema del corazón de nuestro deco: el L64108



Aunque para mas detalle y calidad, en este enlace:

 

http://www.streamload.com/jomapema/JTAG/L64108-2.jpg


En esta imagen, podemos fijarnos en la zona que a nosotros nos interesa, en concreto las patas del chip numero: 23-24-25-26-27, es decir:

Pata 23: TDI
Pata 24: TDO
Pata 25: TMS
Pata 26: TCK
Pata 27: TRST

Estos puntos de entrada/salida, son los que debemos conectar al JTAG, para permitir la comunicación directa con el chip L64108. Debo señalar, que en nuestro deco STR8000, estas patas, y para desgracia nuestra, no están conectadas a pistas específicas, por lo que mas abajo, podremos localizar los puntos de salida del JTAG, y a través de las fotografías del Café Team.
En la siguiente imagen, podremos observar dos esquema completos de un JTAG, con su conexión a través de un conector Sub-D 25, al puerto paralelo de un PC, o al puerto de la impresora, en lenguaje vulgar. Cualquiera de ellos totalmente similares, nos serviran para nuestro proposito:







Puede hacerse en una tarjeta de circuito impreso, o en una protoboard de esas de agujeritos, que venden en cualquier casa de electrónica. Para los más manitas, se facilita el esquema de circuito impreso, y la relacion de componentes adsequibles en cualquier tienda del ramo,y para que puedan fabricárselo ellos mismos. En el siguiente enlace, tenemos el esquema del circuito or el lado componentes:



A continuacion, en este enlace, tenemos la placa base de circuito impreso:



Y en este enlace, el documento ".doc", donde encontraremos la lista de componentes necesarios para su fabricacion:

 

http://www.streamload.com/jomapema/...Componentes.doc


Como recurso de emergencia, siempre queda la posibilidad de comprarlo en cualquier establecimiento del ramo, o a través de cualquiera de las casas que se anuncias en los foros de todos conocidos.

Como recuperar una flash con JTAG
¿Qué hace el JTAG? Es posible actualizar el firmware del Strong 8000 y 8100, a través de un medio, usando para ello, el software especifico, por ejemplo, el magnifico programa EDStrong 6’1 de Fer-Ha, o también el programa Loader, suministrado por la propia Strong, a través de su Web. Para ello, se hace necesario utilizar, un medio de comunicación entre el deco y nuestro PC, es decir, el puerto paralelo y el puerto serie, y a través de este software especifico, poder enviar nuestro firmware al decodificador, aunque esto en ocasiones, conlleva un cierto riesgo si por alguna circunstancia, en el momento de estar cargando el firmware –o dicho de otro modo- escribiendo en la flash, si en ese momento por cualquier circunstancia, se va la luz de la casa, o se interrumpe la comunicación entre nuestro PC y el deco, no podremos arrancar después el decodificador.
Para volver a meter en funcionamiento el decodificador, en el que la memoria esta corrupta, hace falta un medio externo para reprogramar la memoria flash, y es aquí donde el JTAG, tiene un papel predominante. En efecto, se puede utilizar el puerto JTAG incluso sobre la placa madre. Solo hacen falta soldar 7 hijos, que bastan para enlazar el JTAD con la placa madre, y tiene un montaje de adaptación simple. Estas conexiones entre el JTAG y el decodificador y nuestro PC, permiten la carga de un firmware en la memoria flash del deco, pudiendo entonces arrancar y estar disponible para recibir una versión reciente del firmware.
¿Qué es el JTAG? El JTAG es un puerto del que están provistos todos los procesadores actuales, eso permite hacer del "debbuging in situ" y " The Programming", es decir, la programación paso a paso y depuración del firmware, y su carga en el deco. El JTAG es un método de control de las interconexiones de los circuitos llamados también Boundary-Scan.
Los resultados de estos trabajos han sido normalizados bajo el nombre IEEE 1149.1, llamado también estándar JTAG. Sobre el Strong 8000, no podemos disponer de JTAG, pero podemos observar los nodos y los puntos de soldadura en el circuito impreso, para poder extraer la toma. Sin embargo, en el Strong 8100, si existe esta toma JTAG, aunque no habilitada. En estos enlaces, podemos observar dichas tomas de soldaduras sobre el Strong 8000:




Sobre el Strong 8100, disponemos del conector existente sobre la tarjeta-madre, en una disposición que podemos observar en esta fotografía.



Hace falta utilizar un montaje electrónico que haga de interface, entre vuestro PC y el deco. El deco Strong 8000, utiliza a una tarjeta-madre que tiene montado el procesador LSI 64108. Otros decodificadores como el Strong 8100, utilizan otro chip de ultima generación, tal es el SC2000.
Acciones a emprender. Debemos procurarnos una interface JTAG, y debemos conectar este JTAG por un lado, al puerto paralelo de nuestro PC, y por el otro lado al Strong 8000, observando con precaución, los elementos y pines a conectar. Para esto, debemos observar con detenimiento, las fotografías servidas por los anteriores enlaces, y soldar en los puntos indicados, los cablecillos que irán a nuestro JTAG.
Seguidamente, debemos hacernos con el software que nos permitirá controlar el JTAG y que se llama este programa Jtag.exe, y el Userport.exe, y a través de ambos, cargar el firmware en nuestro Strong 8000. Debemos tener también a mano, la ultima versión del Firmware para nuestro Strong, junto con la lista de canales, y el EMU correspondiente.
Para conectar la interfaz JTAG al decodificador, es decir, a los cablecillos que hemos soldado por debajo del circuito impreso y situados debajo del integrado L64108 (ver fotografías), los citados cablecillos, no deberán sobrepasar la longitud de 30 cms. Tener la precaución de utilizar soldadores de punta fina, y que no superen los 25 Wts, y una lupa o gafas de aumento de lectura, nos vendrían bien, para observar que las soldaduras no solo se han efectuado de forma correcta, sino que entre pistas, no hay restos de soldaduras o estaño sobrante, o cortocircuitos no deseados. Obviamente, todas estas operaciones, habrá que hacerla con el deco desenchufado, y teniendo la precaucion de cuando tengamos la placa base del Strong 8000 en nuestras manos, alejarla de focos de estáticas y campos magnéticos. Coger la placa base por las esquinas y no poner los dedos en las soldaduras de los chips.
La conexión de la interfaz JTAG al PC, se hará con un cable de los de impresora, a ser posible con recubrimiento de malla o blindaje antiparásito. Alejar de toda la zona de montaje, los teléfonos celulares, para evitar interferencias de estos, ya que son muy dañinas.
Para proceder a cargar el firmware a nuestro Strong 8000, debemos proceder de la siguiente manera: En este enlace podéis bajaros el software Strong-Jtag.zip, que nos permitirá controlar y cargar el firm en nuestro deco, deberemos descomprimirlo en un directorio específico:

 

http://www.streamload.com/jomapema/JTAG/Strong_jtag.zip


Es importante en los casos en que nuestro sistema operativo este bajo Win XP, o Win 2000, ejecutar el programa Userport.exe, para que el puerto de impresora de nuestro PC, trabaje en modo ECP. Si tenemos dudas de si esta o no trabajando en este modo, es mejor ejecutar Userport.exe.
El programa de ejecucion, dentro de este Zip, es Jtag.exe. La ejecución de este software, se hace bajo entorno MS-DOS, y es necesaria la presencia del JTAG conectado a nuestro puerto paralelo, para poder iniciar la carga del nuevo firmware y su utilización es muy simple, ya que en su menu, modulado entre el "0" y "9", podremos seleccionar los menus que mas necesitemos a nuestras necesidades. En este enlace podremos observar una captura del Menu Principal del pograma Strong Jtag.exe de BIOS y FER-HA, sobre una adaptacion del codigo fuente para nuestro Strong, del Xsat Team.



Como decía anteriormente, esto es la información, la teoría y practica, acerca del JTAG, aplicado a nuestro Strong 8000. Lo aqui expuesto, creo que es el comienzo de una nueva via de investigacion, entorno a nuestro deco, y el JTAG permite abrir en un futuro, nuevas vias de posibilidades de investigacion, y fantasticas sorpresas, conforme vayamos conociendo los chip L64108 y SC2000. De momento, esto es lo que hay. Aunque yo inicie este hilo, y aporte en base a "cotillear" por el WWW..., en el comienzo de este hilo, hago unos agradecimientos a los padres de la criatura. Unos, por apollarme moralmente, otros porque materializaron, depuraron y adaptaron lo que en el hilo se decia, a nuestro Strong... y a otro, no solo por su temeridad.. sino por su valentia, y que fue el conejillo del laboratorio. Saludos a todos, y la proxima, seguro que sera mas gorda que esta.

 

Copyright para I.L. 2005 por jomapema